<?php

/**
 * Diese KLasse erfasst alle benötigten css Dateien und gibt diese auf anfrage zurück
 * 
 * @author Shane
 *
 */
class StylesheetHolder {
	
	// Hier werden die css Dateien gespeichert
	private $stylesheets;
	
	/**
	 * Der Konstructor initialisiert das array als array
	 */
	function __construct() {
	}
	
	/**
	 * Fügt das übergebene Stylesheet dem array hinzu, wenn die Datei noch nicht
	 * darin vorkommt
	 * 
	 * @param string $cssFile
	 */
	function add_stylesheet($cssFile) {
		if (!isset($this->stylesheets)) {
			$this->stylesheets = array();
		}
		
		foreach ($this->stylesheets as $css) {
			if ($css === $cssFile) return;
		}
		
		$this->stylesheets[] = $cssFile;
	}
	
	/**
	 * Gibt das array mit den stylesheets zurück und leert es
	 */
	function get_stylesheets() {
		$cssBuffer = $this->stylesheets;
		
		unset($this->stylesheets);
		
		return $cssBuffer;
	}
	
	/**
	 * Entfernt einen stylesheet aus dem array, wenn es vorhanden ist
	 * @param string $stylesheet
	 */
	function remove_stylesheet($stylesheet) {
		for ($i = 0; $i < count($this->stylesheets); $i++) {
			if ($this->stylesheets[$i] === $stylesheet) {
				unset ($this->stylesheets[$i]);
				return;
			}
		}
	}
}

?>